package com.ztgf.order.models.vo.purchase;

import com.alibaba.fastjson.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ztgf.commodity.models.vo.CommodityShopBrandVO;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;
import java.io.Serializable;
import java.util.List;

/**
 * 店铺报价表VO
 *
 * @author mxli
 * @Date 2021-05-17 10:16:52
 */
@Data
public class PurchaseCommodityBargainVO implements Serializable {

    @ApiModelProperty(value = "主键id")
    private Long id;

    @ApiModelProperty(value = "创建名字")
    private String createUserName;
    @ApiModelProperty(value = "更新人名字")
    private String updateUserName;
    @ApiModelProperty(value = "采购id")
    private Long purchaseId;
    @ApiModelProperty(value = "采购商品id")
    private Long purchaseCommodityId;
    @ApiModelProperty(value = "商品id")
    private Long commodityId;
    @ApiModelProperty(value = "商品url")
    private String commodityUrl;
    @ApiModelProperty(value = "商品logourl")
    private String commodityLogoUrl;
    @ApiModelProperty(value = "商品类型 0现货、1预售")
    private Integer commodityType;
    @ApiModelProperty(value = "商品类型 0上架商品、1未上架商品")
    private Integer commodityPublishType;
    @ApiModelProperty(value = "品牌")
    private Long brandId;
    @ApiModelProperty(value = "所属店铺品牌集合")
    private List<CommodityShopBrandVO> commodityShopBrandList;
    @ApiModelProperty(value = "商品名称")
    private String commodityName;
    @ApiModelProperty(value = "规格型号")
    private String specificationModel;
    @ApiModelProperty(value = "备货时间")
    private Integer stockDays;
    @ApiModelProperty(value = "首款比例")
    private BigDecimal fristScale;
    @ApiModelProperty(value = "尾款比例")
    private BigDecimal finalScale;
    @ApiModelProperty(value = "店铺id")
    private Long shopId;
    @ApiModelProperty(value = "单价")
    private BigDecimal price;
    @ApiModelProperty(value = "总价")
    private BigDecimal totalPrice;
    @ApiModelProperty(value = "数量")
    private Integer num;
    @ApiModelProperty(value = "质保时间：单位月")
    private Integer warranty;
    @ApiModelProperty(value = "收货人")
    private String sendName;
    @ApiModelProperty(value = "收货人电话")
    private String sendMobile;
    @ApiModelProperty(value = "收货人区域")
    private Long sendAreaId;
    @ApiModelProperty(value = "收货人地址")
    private String sendAddress;
    @ApiModelProperty(value = "预计发货时间（天）")
    private Integer sendDays;
    @ApiModelProperty(value = "申请平台砍价金额")
    private BigDecimal platBargainPrice;
    @ApiModelProperty(value = "平台砍价状态：0未申请，1申请中、2申请成功、3申请失败、4平台已协商、5已报价")
    private Integer platBargainStatus;
    @ApiModelProperty(value = "平台砍价支付状态：0未支付，1支付中、2支付成功、3支付失败")
    private Integer platBargainPayStatus;
    @ApiModelProperty(value = "拒绝报价：0不拒绝，1拒绝")
    private Integer refuseBargainStatus;
    @ApiModelProperty(value = "第一次报价")
    private BigDecimal onePrice;
    @ApiModelProperty(value = "第一次议价")
    private BigDecimal oneBargainPrice;
    @ApiModelProperty(value = "第一次报价")
    private BigDecimal twoPrice;
    @ApiModelProperty(value = "第一次议价")
    private BigDecimal twoBargainPrice;
    @ApiModelProperty(value = "第一次报价")
    private BigDecimal threePrice;
    @ApiModelProperty(value = "报价状态：0报价中、1报价结束、2取消报价、3流标")
    private Integer bargainStatus;
    @ApiModelProperty(value = "购买状态：0未购买、1已购买")
    private Integer buyStatus;
    @ApiModelProperty(value = "加入购物车状态：0未加入、1已加入")
    private Integer shoppingCartStatus;
    @ApiModelProperty(value = "维持原价状态：0未维持、1已维持")
    private Integer oldPriceStatus;
    @ApiModelProperty(value = "接受议价状态：0未接受、1已接受")
    private Integer acceptPriceStatus;
    @ApiModelProperty(value = "报价次数：1次报价、2次报价、3次报价")
    private Integer bargainPriceTimes;
    @ApiModelProperty(value = "待报价次数：1次报价、2次报价")
    private Integer waitBargainPriceTimes;

    @ApiModelProperty(value = "申请平台砍价服务费")
    private BigDecimal purchaseFeeMoney;
    @ApiModelProperty(value = "平台砍价服务费根据商品扣除")
    private BigDecimal purchaseFeeMoneyScale;
    @ApiModelProperty(value = "单商品砍价成功后的服务费")
    private BigDecimal purchaseFeeMoneyScalePrice;
    @ApiModelProperty(value = "询价商品佣金")
    private BigDecimal purchaseDividendScale;


    @ApiModelProperty(value = "创建时间")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")//gosn
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")//fastjson
    private Date createTime;
    @ApiModelProperty(value = "更新时间")
    @JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")//gosn
    @JSONField(format = "yyyy-MM-dd HH:mm:ss")//fastjson
    private Date updateTime;

    @ApiModelProperty(value = "收货人区域名称")
    private String sendAreaName;
    @ApiModelProperty(value = "店铺名称")
    private String shopName;

    @ApiModelProperty(value = "砍价成功后第一次支付的服务费")
    private BigDecimal purchaseFeeMoneyScalePayPrice;
    @ApiModelProperty(value = "砍价成功后第一次支付的服务费支付状态：0未支付，1支付中、2支付成功、3支付失败")
    private Integer purchaseFeeMoneyScalePayPriceStatus;

}
